package com.atguigu.distributed.lock.leecode.array;

import java.util.HashMap;

/**
 *最长无重复子数组
 */
public class MaxLength {
    public int maxLength (int[] arr) {
        // write code here
        HashMap<Integer,Integer> map = new HashMap<>();
        int res = 0;
        for(int left = 0,right=0;right<arr.length;right++){
            if(map.containsKey(arr[right])){
                map.put(arr[right],map.get(arr[right])+1);
            }else{
                map.put(arr[right],1);
            }
            while(map.get(arr[right])>1){
                map.put(arr[left],map.get(arr[left++])-1);
            }
            res = Math.max(res,right-left+1);
        }
        return res;

    }
}
